#ifndef DOUBLESTATUS_H_
#define DOUBLESTATUS_H_

#include "StatusElement.h"

/**
 * \class DoubleStatus
 * \brief a StatusElement-derived class which holds a double
 */
class DoubleStatus: public StatusElement {
public:
	/**
	 * \brief DoubleStatus must be declared with a description
	 */
	DoubleStatus(std::string statusDescription);
	virtual ~DoubleStatus();

	/**
	 * \brief redefinition of \a Element::getType() to return the correct value
	 * \return DOUBLESTATUS
	 */
	int getType();
	/**
	 * \brief set the double to store
	 * \param newDoubleValue the new double to store
	 */
	void setValueDouble(double newDoubleValue);
	/**
	 * \brief get the stored double
	 * \return the stored double
	 */
	double getValueDouble();

	void setValue(void* newValue);

private:
	/**
	 * \brief the data member which stores the double
	 */
	double valueDouble;
};

#endif /* DOUBLESTATUS_H_ */
